草庐IT

C++ 性能 std::array 与 std::vector

全部标签

c# - XML + LINQ 是否会在 C# 中为大量数据提供良好的性能?

我目前正在决定选择哪种方式来存储我的应用创建和使用的数据。我宁愿避免使用任何RDBMS作为单独的服务器在机器上运行已经作为我的应用程序将连接到的服务,我的意思是我宁愿想到一些包含在文件上的数据库引擎,但我想避免使用MSAcess或任何其他非多平台/开源/免费的平台。我想结合使用XML文件和LINQ来存储和访问该数据,但是XML文件中的信息,正如我所期望的那样,将在磁盘上占据很大的空间,并且会根据用户事件产生大量的条目。随着XML文件的增长,我担心内存负载、CPU使用率和访问/操作速度。如果XML文件不是一个好主意,那么我可能会使用哪种独立、免费和简单的方法来存储数据,以在哪个应用程序上

C++/STL - 在 std::map 中访问类指针实例时程序崩溃

好的,我有一个函数可以读取xml文件并使用new创建控件并将它们存储在名为Window的类的公共(public)成员变量中:std::mapButtons;std::mapTextBoxes;std::mapCheckBoxes;Button、TextBox和CheckBox类是CreateWindowEx的自制包装器。这是填充map的函数:voidWindow::LoadFromXml(constchar*fileName){XMLNoderoot=XMLNode::openFileHelper(fileName,"Window");for(inti=0;i(root.getChil

.net - xPath 与 DOM API,哪个具有更好的性能

好吧,假设我正在从事一个有很多人同时在线的项目,我需要向他们提供来自一些XML文件的数据。当涉及到性能问题时,最好的方法是什么?xPath或DOM之间是否存在任何真正的区别,或者我不应该在意并继续使用我最喜欢的那个?此外,使用RegEx解析xml或xhtml文件有什么问题? 最佳答案 如果您对性能感兴趣,那么可能会有比DOM执行得更快的树模型(例如,如果您在Java世界,XOM)并且还提供更好的可用性。XPath是一种高级语言,DOMAPI的级别要低得多。因此,主要区别在于程序员的工作效率、易维护性等。至于性能,高级语言通常比顶级程

java - jdom性能

我目前正在使用nativeJavaXML处理库(Xerces)。我不能使用任何sax解析器,因为我需要随机访问xml节点。我发现在解析XML文件时CPU使用率达到100%。我正在处理大量的小尺寸(1-10kb)-while(hasFile){processXMlfile(hasFile.next);}在processXMlfile()中,我正在构建解析和处理文件。如果我迁移到JDOM库,我会获得任何性能优势吗? 最佳答案 JDOM2.0.0解决了许多性能问题。其中之一与XML文件的“紧密循环”处理直接相关。看看:http://hun

c++ - std::vector 的异常行为

我编写了一组相当复杂的类来处理流(字符串、文件或内存)的迭代。这些不是标准流,也不相关。无论如何,由于遍历这些缓冲区并根据缓冲区执行操作,我希望能够在调试器中看到当前缓冲区位置。因此,仅出于调试原因,我将整个流复制到一个vector,并保存指向该vector中某个位置的指针。下面的代码就像一个前向迭代器。我需要能够存储一个位置,然后使用它或更新它。请注意,此代码只是为了复制问题。classfoo{public:foo(std::stringszTemp):nOffset(0){vec.resize(szTemp.size());std::memcpy(&vec[0],szTemp.c_

java - StringBuilder 和 ResultSet 性能问题的可能原因是什么

我正在用Java循环遍历结果集;出于测试目的,它返回大约30行,每行17列(所有字符串数据)。我正在使用StringBuilder从结果中手动构建一个XML字符串,并且循环完成这些迭代实际上需要大约36秒。注意:我意识到这不是从数据库中获取XML的最佳方式,甚至不是从结果集中获取XML的最佳方式-但无论如何这都让我对缓慢的性能感到好奇。更新:根据目前的回复,我必须解决以下问题:运行查询的时间不到一秒,我在代码的每个部分前后都执行了System.currentTimeMillis()以缩小范围。36秒完全在下面的代码中。ResultSetMetaDatarsmeta=rset.getMe

android - 在 Android 上解析 HTML,主要性能问题

我需要解析大约100kB的HTML数据,这只会导致Android上出现巨大的性能问题。我已经尝试了内置的XML解析器和JTidy。内置的XML解析器给我大约半秒的解析时间,我可以轻松接受。问题是使用XML解析器来解析凌乱的HTML代码不是一个好主意,这不是一个选项。(我尝试过预处理,但它甚至开始提示有效的HTML,所以...)我在谷歌上搜索了一下,有人建议JTidy在将代码传递给XML解析器之前清理代码。这绝对是一场噩梦,使用JTidy进行预处理解析现在大约需要7秒。所以现在我唯一的选择就是正则表达式。你怎么看? 最佳答案 这取决于

java - XML 到 JSON 的转换 : empty array instead of empty string

我正在使用库net.sf.json将XML转换为JSON。这是我写的代码:FileInputStreamfis=newFileInputStream("C:\\Desktop\\TestXML.xml");XMLSerializerxmlSerializer=newXMLSerializer();JSONjson=xmlSerializer.readFromStream(fis);JSONArrayjsonArray=newJSONArray();jsonArray.add(json);JSONObjectroot=newJSONObject();root.element("WSJso

arrays - 获取节点各部分的Xpath

我是XPath的新手,如果这对您来说是个愚蠢的问题,我深表歉意。我需要从第一个spanclass="price"中提取一个没有“$”的价格$1.23$4.56$7.89我自带的Xpath是//span[@class='price'])[1]但它给了我每个元素的数组[$][1][.][23]我只需要1.23不带“$”。你可以帮帮我吗?谢谢! 最佳答案 在XPath1.0中,您可以在节点上使用string函数来获取其中的所有文本。例如string(//span[@class='price'][1])(如果您在节点集上使用它,也就是节点数

java - 如何以编程方式设置 Vector Drawable 的组参数?

我有一个vector可绘制对象,我想根据应用程序中的某些输入来旋转它。我有一个vector_drawable.xml在我的代码中,我创建了一个ValueAnimatorValueAnimatoranimator=ObjectAnimator.ofInt(myDrawable,"rotate",0,360);animator.setDuration(500);animator.addUpdateListener(animatorUpdateListener);animator.start();animatorUpdateListener定义如下:animatorUpdateListene